package com.mdd.common.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;

@Data
@ApiModel("案件实体")
@TableName("legal_case")
public class LegalCase implements Serializable {

    private static final long serialVersionUID = 1L;

    @TableId(value="id", type= IdType.AUTO)
    @ApiModelProperty(value = "")
    private Long id;

    @ApiModelProperty(value = "地区id")
    private Long aId;

    @ApiModelProperty(value = "1-正常案件 2-调解案件")
    private Integer caseType;

    @ApiModelProperty(value = "用户id")
    private Long userId;

    @ApiModelProperty(value = "案件编号")
    private String caseTradeNo;

    @ApiModelProperty(value = "案件名称")
    private String caseName;

    @ApiModelProperty(value = "1-个债 2-企债")
    private Integer type;

    @ApiModelProperty(value = "")
    private Long areaId;

    @ApiModelProperty(value = "")
    private String areaName;

    @ApiModelProperty(value = "债权人类型 1-个债 2-企债")
    private Integer zqType;

    @ApiModelProperty(value = "债务人类型 1-个债 2-企债")
    private Integer zwType;

    @ApiModelProperty(value = "债权人姓名")
    private String zqName;

    @ApiModelProperty(value = "债权人身份证")
    private String zqIdCard;

    @ApiModelProperty(value = "债权人身份证照片")
    private String zqIdCardImage;

    @ApiModelProperty(value = "债权人联系电话")
    private String zqMobile;

    @ApiModelProperty(value = "债权人地址")
    private String zqAddress;

    @ApiModelProperty(value = "债务人姓名")
    private String zwName;

    @ApiModelProperty(value = "债务人身份证")
    private String zwIdCard;

    @ApiModelProperty(value = "债务人身份证照片")
    private String zwIdCardImage;

    @ApiModelProperty(value = "债务人联系电话")
    private String zwMobile;

    @ApiModelProperty(value = "债务人地址")
    private String zwAddress;

    @ApiModelProperty(value = "债务人工作单位")
    private String zwCompanyAddress;

    @ApiModelProperty(value = "债权人企业名称")
    private String zqCName;

    @ApiModelProperty(value = "债权人企业联系电话")
    private String zqCMobile;

    @ApiModelProperty(value = "债权人企业地址")
    private String zqCAddress;

    @ApiModelProperty(value = "债权人营业执照")
    private String zqCLicense;

    @ApiModelProperty(value = "债权人法人姓名")
    private String zqCLegalName;

    @ApiModelProperty(value = "债权人法人身份证")
    private String zqCLegalIdCard;

    @ApiModelProperty(value = "债权人法人联系电话")
    private String zqCLegalMobile;

    @ApiModelProperty(value = "债权人法人身份证照片")
    private String zqCLegalIdCardImage;

    @ApiModelProperty(value = "债务人企业名称")
    private String zwCName;

    @ApiModelProperty(value = "债务人企业联系电话")
    private String zwCMobile;

    @ApiModelProperty(value = "债务人企业地址")
    private String zwCAddress;

    @ApiModelProperty(value = "债务人营业执照")
    private String zwCLicense;

    @ApiModelProperty(value = "债务人法人姓名")
    private String zwCLegalName;

    @ApiModelProperty(value = "债务人法人身份证")
    private String zwCLegalIdCard;

    @ApiModelProperty(value = "债务人法人联系电话")
    private String zwCLegalMobile;

    @ApiModelProperty(value = "债务人法人身份证照片")
    private String zwCLegalIdCardImage;

    @ApiModelProperty(value = "案件金额")
    private Long money;

    @ApiModelProperty(value = "借贷时间")
    private Date jdDate;

    @ApiModelProperty(value = "目前涉及未收回债权本金")
    private Long zqMoney;

    @ApiModelProperty(value = "截止目前利息")
    private Long nowRates;

    @ApiModelProperty(value = "以上金额暂计至")
    private Date moneyDate;

    @ApiModelProperty(value = "截止至暂计时间合计金额")
    private Long moneyDateTotal;

    @ApiModelProperty(value = "证据图片")
    private String evidenceImage;

    @ApiModelProperty(value = "证据录音")
    private String evidenceVoice;

    @ApiModelProperty(value = "证据视频")
    private String evidenceVideo;

    @ApiModelProperty(value = "案件描述")
    private String info;

    @ApiModelProperty(value = "预估价位-低")
    private Long ygPriceLow;

    @ApiModelProperty(value = "预估价位-高")
    private Long ygPriceHigh;

    @ApiModelProperty(value = "费用信息")
    private Long price;

    @ApiModelProperty(value = "分佣比例")
    private Long caseScale;

    @ApiModelProperty(value = "合伙人佣金")
    private Long partnerScale;

    @ApiModelProperty(value = "律师分佣")
    private Long lawyerScale;

    @ApiModelProperty(value = "推荐人分佣")
    private Long recommendScale;

    @ApiModelProperty(value = "1-关联债权人")
    private Integer isLinkUser;

    @ApiModelProperty(value = "1-审核通过 2-审核驳回 3-已签合同 4-律师已签合同 5-律师支付 6-已支付 7-已完成")
    private Integer status;

    @ApiModelProperty(value = "驳回原因")
    private String rejectReason;

    @ApiModelProperty(value = "1-后台审核 2-app审核")
    private Integer adminType;

    @ApiModelProperty(value = "审核员id")
    private Long adminId;

    @ApiModelProperty(value = "合伙人id")
    private Long partnerId;

    @ApiModelProperty(value = "审核时间")
    private Long examineTime;

    @ApiModelProperty(value = "接单律师id")
    private Long lawyerId;

    @ApiModelProperty(value = "接单时间")
    private Long takeTime;

    @ApiModelProperty(value = "")
    private Long createTime;

    @ApiModelProperty(value = "")
    private Long endTime;

    @ApiModelProperty(value = "1-已分佣")
    private Integer isFy;

    @ApiModelProperty(value = "")
    private Long updateTime;

    @ApiModelProperty(value = "")
    private Long deleteTime;

    @ApiModelProperty(value = "和解协议图片")
    private String agreeImg;

    @ApiModelProperty(value = "结案备注")
    private String agreeRemark;

    @ApiModelProperty(value = "是否线下签署合同：1是 0否 （线下签署审核后跳过签署操作）")
    private Integer jumpContractSign;

    @ApiModelProperty(value = "线下签署合同文件")
    private String offlineSignFiles;

    @ApiModelProperty(value = "是否展示给用户")
    private Integer isShow;

    @ApiModelProperty(value = "案件绑定合作人id")
    private Long caseCooperationUserId;

    @ApiModelProperty(value = "律师是否可接银行案件")
    private Integer changeLawCanTakeCase;

    @ApiModelProperty(value = "是否是后台上传案件")
    private Integer isAdminUpload;

    @ApiModelProperty(value = "后台上传操作员")
    private Long adminUploader;

}